package principal;

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Date;
import java.util.Scanner;
import java.util.Vector;

import visualisationRadar.VisualisationRadar;
import modelesObjet.ModeleListePluviometres;
import modelesObjet.ModelePluviometre;

public class ListePluviometres implements ModeleListePluviometres {

	
	public ListePluviometres(String radar, Date dateDebut, Date dateFin) {
		this.radar = radar ;
		vecPluvio = new Vector<ModelePluviometre>() ;
		String extension = ".PLUVIO";
		this.dateDebut = dateDebut ;
		this.dateFin = dateFin ;
		String dateDebutStr = FileFactory.dateToFormatFichier(dateDebut);
		String dateFinStr = FileFactory.dateToFormatFichier(dateFin);
		String fileStr = this.radar + "_" + dateDebutStr + "_" + dateFinStr
				+ extension;

		File ficPluvio = new File(VisualisationRadar.repertoireDonneesPluvios + fileStr);
		try {
			Scanner scan = new Scanner(ficPluvio);
			System.out.println("Chargement du fichier pluvio de " + radar + " pour la période du " + FileFactory.dateToFormatHumain(dateDebut) + " au " + FileFactory.dateToFormatHumain(dateFin));
			do {
				vecPluvio.add(new Pluviometre(scan.nextLine()));
			} while (scan.hasNextLine());
			scan.close() ;
		} catch (FileNotFoundException e) {
			System.out.println("Pas de fichier pluvio pour la période du " + FileFactory.dateToFormatHumain(dateDebut) + " au " + FileFactory.dateToFormatHumain(dateFin) + " pour " + radar);
			vecPluvio = null ;
		}

	}
	@Override
	public Vector<ModelePluviometre> getVecteurPluviometres() {
		return vecPluvio;
	}
	
	public Date getDateDebut() {
		return dateDebut ;
	}
	
	public Date getDateFin() {
		return dateFin ;
	}
	
	public String getRadar() {
		return radar ;
	}

	private Vector<ModelePluviometre> vecPluvio ;
	private Date dateDebut, dateFin ;
	private String radar ;

}
